package com.maserb.monitor.service.base;

import com.maserb.monitor.entity.BaseEntity;

import javax.servlet.http.HttpServletRequest;
import java.util.Date;

/**
 * 通用工具服务
 * @author jimmy
 */
public interface IToolService {
//    String getDataTypeName(String code, String key);

//    String getDataTypeCode(String code, String nameKey);

//    List<TSType> getDictTypeList(String code);

    String formatYYMMDD(Date date);

    String formatYYMMDDHHMMSS(Date date);

    String formatHHMMSS(Date date);

    String formatYYMMDDHHMMSS(String date);

    /**
     * 转换字符串为日期  yyyy-MM-dd HH:mm:ss
     * @param date
     * @return
     */
    String formatYYMMDDHHMMSSTime(String date);

    String formatYYMMDD(String date);

    /**
     * 转换字符串为日期  yyyy-MM-dd HH:mm:ss
     * @param time
     * @return
     */
    Date parseDateFromNormalTimeFormat(String time);

    /**
     * 转换字符串为日期  yyyy-MM-dd
     * @param time
     * @return
     */
    Date parseDateFromNormalDateFormat(String time);

    /**
     * 转换字符串  yyyy-MM-dd 转换为 yyyyMMddHHmmss
     * @param time
     * @return
     */
    String parseStringFromNormalDateFormat(String time);
    
    String convertBooleanToStringYn(Boolean b);

    void saveOptLog(HttpServletRequest request, String opt, String remarks);

    void saveOptLog(String ip, String opt, String remarks);

    String getOrgName(String orgId);

    public void init();

    String getRoleName(String roleId);

//    void saveOptLog(OprationLog log);

//    Page<OprationLog> findLogs(final User user, Pageable var1) ;

//    String getOrgName(String orgId);

//    Department getOrgById(String orgId);

//    List<Department> getOrgList();

    void initCreateInfo(BaseEntity entity);

    void initUpdateInfo(BaseEntity entity);

//    List<TSTypegroup> getAllGroupList();

    /**
     * 加载字典项
     * @param code 字典类别
     * @param isReload 是否重新从数据库加载
     * @return
     */
//    List<TSType> getDataDictList(String code, boolean isReload);

    /**
     * 获取对应的加油站
     * @param unitCode 单位代码
     * @param type 设备类型
     * @return
     */
}
